草庐IT

sql - Sum on a left join SQL

全部标签

sql - 如何使用分组依据从表中查找最大值

我有下面的表(播放器)列playerIdscoreteamId此表包含所有球队的所有球员信息。PlayerID是主列。每个团队包括多名球员,因此teamId上有很多重复值。分数是每个玩家的分数。我想写一个hive-sql来查询每支球队的最高得分球员。下面是我试过的查询:selectmax(score)score,teamIdfromplayergroupbyteamId这个查询工作正常,但它只显示teamId和最高分数。我也想查询playerId。如果我在选择列中添加playerId,我会遇到以下错误:org.apache.hive.service.cli.HiveSQLExcepti

sql - 在 Apache Pig 中计算连接表中的总和

我从Hive加载以下三个表:books=LOAD'books'USINGorg.apache.hive.hcatalog.pig.HCatLoader()AS(isbn_b:chararray,booktitle:chararray,author:chararray,pubyear:chararray,publisher:chararray,urls:chararray,urlm:chararray,urll:chararray);users=LOAD'users'USINGorg.apache.hive.hcatalog.pig.HCatLoader()AS(id_u:chararr

sql - 如何在创建 Hive 表时向使用 serde 创建的表添加列?

表格描述信息hive>desclog23;OKcol_namedata_typecomment17/05/2510:49:12INFOmapred.FileInputFormat:Totalinputfilestoprocess:1hoststringfromdeserializerremote_hoststringfromdeserializerremote_lognamestringfromdeserializerremote_userstringfromdeserializerrequest_timestringfromdeserializerrequest_methodstri

hadoop - aqua studio 上的 HIVe sql

我想返回所有有两个连字符的电话号码,例如:999-999-9999SELECTINSTR(phonenumber,'-',1,2),phonenumberFromphonetableWherelength(phonenumber)=11AndINSTR(phonenumber,'-')=1我想要返回电话号码,例如999-999-9999 最佳答案 select*fromphonetablewherephonenumberlike'___-___-____'或select*fromphonetablewherephonenumberr

sql - 在数据中查找指定模式--Hive

我的表有如下数据Column--------1122521122621122821122121122221122442我需要在模式Hive中找到那些在MIDDLE中有空格的数字的计数。如果可能的话,请帮我解释一下计数。 最佳答案 使用like和count(*):selectcount(*)fromtwherecolumnlike'%%'; 关于sql-在数据中查找指定模式--Hive,我们在StackOverflow上找到一个类似的问题: https://st

sql - Impala 查询错误 - AnalysisException : operands of type INT and STRING are not comparable

我正在尝试在Impala中执行查询并收到以下错误(AnalysisException:INT和STRING类型的操作数不可比较:B.COMMENT_TYPE_CD='100')有人可以帮我解决这个问题:查询:SELECTORDER_ID,L1.LONG_TEXTFROMDB.ORDER_COMMENTA,DB.SHORT_TEXTL1WHEREACTION_SEQUENCE=(SELECTMAX(ACTION_SEQUENCE)FROMDB.ORDER_COMMENTBWHEREB.COMMENT_TYPE_CD='100'ANDA.ORDER_ID=B.ORDER_ID)ANDCOM

sql - 如何根据某些条件在配置单元中获取收集集

如何根据某些条件获取hive中的collectsetid|num_of_cats=====================HOPAHOPBHOPCCAPACAPCCAPBTOPC如果指标是A则第一个字段是1。顺序是A,B,C例如:第一行仅包含A,因此指标为1,0,0第二行只包含B所以指标是0,1,0应该返回:id|cats_aggregate(indicatororderisA,B,C)===========================HOPArray(1,0,0)HOPArray(0,1,0)HOPArray(0,0,1)CAPArray(1,0,0)CAPArray(0,0,1

sql - ETL 管道的数据整合

我目前正计划将一些数据源移动到一个地方进行后验分析。目前我有任何数据源(数据库),例如:MSSQLMySQLmongodbPostgresCassandra将用于大数据管道中的分析。将任何源迁移到Cassandra集群的最佳方法是什么? 最佳答案 我强烈建议在此用例中使用NiFi。我可以立即概述的一些好处。内置“处理器”可用于从所有列出的数据源读取数据并写入Cassandra。非常高的吞吐量和低延迟。无需编写大量代码即可快速开发数据采集管道。如果需要,能够在项目后期非常轻松地执行“更改数据捕获”。提供高度并发的模型,开发人员无需担心

hadoop - 在 Impala SQL 中编写一个 While 循环?

在Impala中编写while循环的语法是什么?甚至可以写一个循环吗?我似乎无法声明变量,而且它无法将“while”识别为关键字。 最佳答案 Impala在其语法中不支持WHILE循环。引用资料:ImpalaReservedWords 关于hadoop-在ImpalaSQL中编写一个While循环?,我们在StackOverflow上找到一个类似的问题: https://stackoverflow.com/questions/49523380/

SQL聚合以添加带有标志的新列

我有一个专栏Country-------CanadaIndiaUSAIndiaChinaCanada我想通过插入另一个名为M_U的列来更新此表,该列只能包含0或1如果国家多次出现=1如果国家只出现一次=0output-------Canada1India1USA0India1China0Canada1 最佳答案 这应该适合你:selecta.country,casewhenb.c>1then1else0endfromcountriesajoin(selectCountry,count(*)ascfromcountriesgroupb